﻿<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Gman.WebApp.Models.BajaActivoDetalleModel>" %>

<style>
    .ui-widget
    {
        font-size: 0.8em;
    }
    .ui-dialog .ui-dialog-content
    {
        padding:0px;
    }
    .style1
    {
        width: 63px;
    }
</style>

<div  runat="server" id="PopupGUID" />

<% if (true)
   {
       PopupGUID.InnerText = Guid.NewGuid().ToString();
       
   }
%>


<div id="BajaActivoDetallePopup_<%= PopupGUID.InnerText %>" >  
    <div class="DataTable">
        <fieldset>    
            <table  width="100%">  
                <tr>
                    <td colspan="4">
                        <table id ="searchActivo">
                            <% Html.RenderPartial("~/Views/BajaActivoDetalle/SearchActivo.ascx", Model); %>
                        </table>
                    </td>
                </tr>                
                <tr>            
                    <td style="width:25%;">
                        <div class="editor-label">
                            Autorizado por
                        </div>
                    </td>
                    <td style="width:25%;">
                        <div>
                            <%= Html.DropDownListFor(model => model.BajaActivoDetalle.AutBajaActi, Model.Autorizado, new { style = "width: 80%;", propertyname = "BajaActivoDetalle.AutBajaActi" })%>
                    </td>
                    <td style="width:25%;">
                        <div class="editor-label">
                            Personal Recepcion
                        </div>
                    </td>
                    <td style="width:25%;">  
                        <div>
                             <%= Html.DropDownListFor(model => model.BajaActivoDetalle.RecepBajaActi, Model.Recepcion, new { style = "width: 80%;", propertyname = "BajaActivoDetalle.RecepBajaActi" })%>
                    </td>
                </tr>
                <tr>                           
                    <td>
                        <div class="editor-label">
                            Fecha Baja
                        </div>
                    </td>
                    <td>
                        <div>
                            <%= Html.TextBoxFor(model => model.BajaActivoDetalle.FecBajaActivo, new { @class = "date", id = "FecBaj", style = "width: 80px;", propertyname = "BajaActivoDetalle.FecBajaActivo" })%>
                        </div>
                    </td>
                    <td>
                        <div class="editor-label">
                           
                        </div>
                    </td>
                    <td class="style1">
                        <div>
                            
                        </div>
                    </td>    
                </tr>
                <tr>
                     <td>
                        <div class="editor-label">
                            Motivo Baja
                        </div>
                    </td>
                    <td colspan="3">
                        <div>
                            <%= Html.TextAreaFor(model => model.BajaActivoDetalle.MtvoBajaActivo, new { style = "width: 80%;", propertyname = "BajaActivoDetalle.MtvoBajaActivo" })%>
                        </div>
                    </td>
                </tr>
            
                                     
            </table>    
        </fieldset>                
    </div>    
</div>


<script type="text/javascript">

    var activoGuid = "<%= Model.ID.ToString()%>";
    var action = "<%= Model.Action.ToString()%>";
    
    $(document).ready(function() {
        setTimeout(function() {
            AddValidatorsDialog();
            SetValidationBajaActivoDetalle();
        }, 500);

        $("[id^='Bien_']").change(function() { UpdateFieldBajaActivoDetalle(this); });
        $("[id^='BajaActivoDetalle_']").change(function() { UpdateFieldBajaActivoDetalle(this); });
        $("#btnBuscarActivo").click(function() { DoSearchDetalle(); });

        $(".date").datepicker();
        $(".date").change(function() { parseAndSetDt(this); });
        
        SetupDialog();
    });

    function SetupDialog() {
        var popupTitle = '<%= (Model.Action.ToString() == "edit") ? "Edición de Activos" : "Baja de Activo" %>';

        $("#BajaActivoDetallePopup_<%= PopupGUID.InnerText %>").dialog({
            modal: true,
            resizable: false,
            title: popupTitle,
            width: 800,
            height: 'auto',
            autoOpen: true,
            buttons:
            {
                "Grabar": function() { SaveBajaActivoDetalle(); },                
                "Cerrar": function() { $(this).dialog("close"); }

            },
            close: function(event, ui) {
                $(this).dialog("destroy");
                $("#BajaActivosDetallePopupDiv").empty();
            }
        });
        $("#BajaActivoDetallePopup_<%= PopupGUID.InnerText %>").dialog("open");
    }

    function SaveBajaActivoDetalle() {
        if ($('.ui-dialog img.validation:visible').length) {
            apprise('Por favor corregir todos los errores de validación.');
            return false;
        }
        AddOrEditActivo(action);
        $("#BajaActivoDetallePopup_<%= PopupGUID.InnerText %>").dialog("close");       
    }

    function SetValidationBajaActivoDetalle() {
        var data =
        {
            id: activoGuid
        };
        $.ajax({
            type: "POST",
            url: window.GetControllerUrl("GetValidation", "BajaActivoDetalle"),
            dataType: "json",
            data: data,
            success: function(validationList) {              
                window.UpdateValidationDialog(validationList.PropertyValidationList);
            }
        });
    }

    function UpdateFieldBajaActivoDetalle(element) {
        var that = this;
        var data = getPropertyValuePairWithFormat(element, activoGuid);
        $.ajax({
            type: "POST",
            async: true,
            url: window.GetControllerUrl("UpdateField", "BajaActivoDetalle"),
            dataType: "json",
            data: data,
            success: function(result) {
                UpdatePropertiesAndValidationDialog(result);
            },
            error: function() {
                alert("An unexpected error occurred while updating the field, please refresh the page and try again");
            }
        });
    };

    function DoSearchDetalle() {
        var cod = $('#Bien_CodBien').val();
        var data =
        {
            cod: cod,
            activoGuid: activoGuid
        };
        $.ajax({
            type: "POST",
            url: window.GetControllerUrl("DoSearch", "BajaActivoDetalle"),
            data: data,
            success: function(resultado) {                
                if (typeof (resultado.result) === "undefined") {
                    $("#searchActivo").empty();
                    $("#searchActivo").append(resultado);
                    $("#btnBuscarActivo").click(function() { DoSearchDetalle(); });                    
                } else {
                    apprise(resultado.message);
                }
            },
            error: function() {
                alert("error");
            }
        });
    };

    function parseAndSetDt(element) {
        try {
            var dt = $.datepicker.parseDate("dd/mm/yy", $(element).val());
            $(element).datepicker("setDate", dt);
        }
        catch (e) {
            $(element).datepicker("setDate", null);
        }
        window.UpdateFieldBajaActivoDetalle(element);
    }    
</script>